<script type="text/javascript" src="../../repo/files/%3Apublic%3Aplugin-samples%3Apentaho-cdf%3Alegacy%3A30-documentation%3A30-component_reference%3AMetaLayerSamples.js"></script>
<div class="shadow">

	<div class="contents">

		<h2>XactionComponent</h2>

		<h3>Description</h3>
		<p>
		This is the most generic component. Allows the user to input the result of a xaction into where he wants on the page.
		</p>

		<h3>Options</h3>

		<dl class="documentation">
			<dt>name</dt>
			<dd>The name of the component</dd>

			<dt>type</dt>
			<dd><code>xactionComponent</code></dd>

			<dt>listeners</dt>
			<dd><i>Array - </i> Parameters who this component will react to</dd>

			<dt>parameters</dt>
			<dd><i>Array of Arrays - </i> Parameters to pass to the xaction</dd>

			<dt>solution</dt>
			<dd>Solution where the xaction is</dd>

			<dt>path</dt>
			<dd>Path where the xaction file is</dd>

			<dt>action</dt>
			<dd>Xaction file name</dd>

			<dt>htmlObject</dt>
			<dd>Id of the component (usually a div or a span tag) to be replaced by the result</dd>

			<dt>refreshPeriod</dt>
			<dd>Time in seconds for this component to refresh. Default is 0 (disabled)</dd>

			<dt>iframe</dt> 
			<dd> Wheather to render the xaction inside an iframe or inline. Default: false</dd>


			<dt>executeAtStart</dt>
			<dd>True to execute the component at start, false otherwise</dd>

			<dt>tooltip</dt>
			<dd>Tooltip to be displayed when mouse hovers</dd>

			<dt>serviceMethod</dt>
			<dd>Optional, defaults to ServiceAction.  Setting this value to ViewAction calls the traditional BI Platform action servlet</dd>

			<dt>preExecution</dt>
			<dd><i>Function - </i> Function to be called before the component is executed</dd>

			<dt>postExecution</dt>
			<dd><i>Function - </i> Function to be called after the component is executed</dd>
		</dl>

		<h3>Sample</h3>

		<div id="example" class="flora">
			<ul>

				<li><a href="#sample"><span>Sample</span></a></li>
				<li><a href="#code"><span>Code</span></a></li>
			</ul>
			<div id="sample">

				<div id="sampleObject"></div>

			</div>


				<div id="code">
					<textarea cols="80" rows="20" id="samplecode">
Dashboards.addParameter( "productLineParam", "null");
Dashboards.addParameter( "territoryParam", "null");

var topTenCustomers = {
  name: "topTenCustomers",
  type: "xaction",
  path: "/public/plugin-samples/pentaho-cdf/20-samples/home_dashboard/topTenCustomers.xaction",
  listeners:["productLineParam", "territoryParam"],
  parameters: [["productLine", productLineParam], ["territory", territoryParam]],
  htmlObject: "sampleObject",
  executeAtStart: true,
  tooltip: "My first dashboard"
}

Dashboards.init([topTenCustomers]);
Dashboards.finishedInit = false;
					</textarea>
					<br />
					<button onclick="evaluateCode(true)">Try me</button>
				</div>
			</div>

		</div>
	</div>

	<script language="javascript" type="text/javascript">

		var tabs = $("#example").tabs();
		evaluateCode(false);
	</script>
